//
//  MenuController.h
//  This file is part of D&D Manager
//
//  Created by Matthew Hutton on 21/03/2007.
//
//
//D&D Manager, a D&D Character and battle management program.
//Copyright (C) 2007, Matthew Hutton
//
//This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
//
//This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
//
//You should have received a copy of the GNU General Public License along with this program; if not, write to:
//The Free Software Foundation, Inc.,
//51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

#import <Cocoa/Cocoa.h>
#import "MyDocumentController.h"

@interface MenuController : NSObject {
	IBOutlet NSMenuItem *addCharacterButton;
	IBOutlet NSMenuItem *addQuickCharacterButton;
	IBOutlet NSMenuItem *attackButton;
	IBOutlet NSMenuItem *castSpellButton;
	IBOutlet NSMenuItem *continueBattleButton;
	IBOutlet NSMenuItem *displayLogButton;
	IBOutlet NSMenuItem *displayDiceButton;
	IBOutlet NSTableView *domainsTable;
	IBOutlet NSMenuItem *duplicateButton;
	IBOutlet NSMenuItem *editCharacterClassesButton;
	IBOutlet NSMenuItem *exitBattleButton;
	IBOutlet NSMenuItem *fileOptionsButton;
	IBOutlet NSMenuItem *grantXPButton;
	IBOutlet NSMenuItem *importButton;
	IBOutlet NSMenuItem *lockButton;
	IBOutlet NSWindow *preferencesPanel;
	IBOutlet NSMenuItem *restButton;
	IBOutlet NSMenuItem *removeButton;
	IBOutlet NSMenuItem *startBattleButton;
	MyDocumentController *myDocController;
	NSMutableArray *checkedDupes;
}
-(IBAction)addCharacter:(id)sender;
-(IBAction)addNewDomain:(id)sender;
-(void)addObjectToCheckedDupes:(NSManagedObject *)obj;
-(IBAction)addQuickCharacter:(id)sender;
-(NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication *)sender;
-(void)applicationWillFinishLaunching:(NSNotification *)aNotification;
-(IBAction)attack:(id)sender;
-(void)attackAndSimilarButtonNowOn:(BOOL)shouldBeOn;
-(IBAction)castSpell:(id)sender;
-(BOOL)checkDupesForObject:(NSManagedObject *)obj;
-(void)clearDupesArray;
-(IBAction)continueBattle:(id)sender;
-(void)continueBattleNowOn:(BOOL)shouldBeOn;
-(void)controlTextDidEndEditing:(NSNotification *)aNotification;
-(void)defaultButtonsNowOn:(BOOL)shouldBeOn;
-(void)disableAbsolutelyAllButtons;
-(void)disableAllButtons;
-(IBAction)displayLogSheet:(id)sender;
-(IBAction)duplicateCurrentCharacter:(id)sender;
-(IBAction)downloadSpells:(id)sender;
-(IBAction)editCharacterClasses:(id)sender;
-(void)enableDiceAndLogButtons;
-(IBAction)exitBattle:(id)sender;
-(void)exitBattleNowOn:(BOOL)shouldBeOn;
-(IBAction)featValueChanged:(id)sender;
-(IBAction)grantXP:(id)sender;
-(IBAction)import:(id)sender;
-(IBAction)loadDandDLinksPage:(id)sender;
-(IBAction)loadWebsite:(id)sender;
-(IBAction)lockCharacter:(id)sender;
-(IBAction)removeCharacter:(id)sender;
-(IBAction)removeDomain:(id)sender;
-(IBAction)rest:(id)sender;
-(void)restAndGrantXPButtonsNowOn:(BOOL)shouldBeOn;
-(IBAction)rollDice:(id)sender;
-(void)setupCharacterLocked:(BOOL)shouldBeOn;
-(IBAction)showFileOptions:(id)sender;
-(IBAction)showPreferences:(id)sender;
-(void)spellButtonNowOn:(BOOL)shouldBeOn;
-(IBAction)startNewBattle:(id)sender;
-(void)startNewBattleNowOn:(BOOL)shouldBeOn;
#pragma mark -
#pragma mark Table Stuff
#pragma mark 
-(int)numberOfRowsInTableView:(NSTableView *)aTableView;
-(id)tableView:(NSTableView *)aTableView
objectValueForTableColumn:(NSTableColumn *)aTableColumn
		   row:(int)row;
@end
